/**
 * 入口页面初始化
 * @since 1.0 2014-11-18 by sutroon
 */
function ui_init_index() {
    // 初始化标签
    mditab.fn_before_init = function () {
        mditab.add_tab({title: '首页 ', url: window.config.home_url});
    }
    mditab.setConfig({limit: 10});
    mditab.init();
    // 导航菜单下拉设置
    if ('undefined' !== typeof ($.fn.superfish)) {
        $('ul.sf-menu').superfish({delay: 100});
    }
    if ('undefined' !== typeof ($.fn.marqueeLeft)) {
        $('.notices-panel').marqueeLeft({speed: 40, width: '500px', hide: false});
    }

    $.ajaxSetup({
        cache: false //关闭AJAX相应的缓存
    });

    // 设置首页菜单
    config_index_menu();

    // 设置入口页面的系统链接按钮
    config_index_sysbuttons();

    // 编辑项目按钮 2014-8-12 by sutroon
    // @example <a href="?s=XCall/Admin/admin_edit/id/[key].html" class="lnk-edit" data-dialog="{title:'编辑管理员',width:400,height:360}">编辑管理员</a>
    $('.lnk-edit').click(function () {
        var $this = $(this);
        idialog.open_edit_dialog($this.attr('href'), {title: $this.text()}, 'info{n}');
        return false;
    })
    $('.lnk-view').click(function () {
        var $this = $(this);
        idialog.open_view_dialog($this.attr('href'), {title: $this.text()}, 'info{n}');
        return false;
    })
    // 获取短消息数量 2015-12-3 SoChishun Added.
    function get_pm_count() {
        $.get($('#pmcount').data('url'), function (data) {
            $('#pmcount').removeClass().addClass(data > 0 ? 'xsui-danger' : '').text('(' + data + ')');
        })
    }
    get_pm_count();
    setInterval(get_pm_count, 5000); //TODO: 5秒读取一次短消息,做成后台配置变量PM_INTERVAL(秒)
    // 头部显示控制,用于小屏幕增加编辑器空间 2015-11-12 SoChishun Added.
    $('#switch-header').click(function () {
        var $i = $(this).find('i');
        if ($i.is('.fa-toggle-up')) {
            $i.removeClass('fa-toggle-up').addClass('fa-toggle-down');
        } else {
            $i.removeClass('fa-toggle-down').addClass('fa-toggle-up');
        }
        $('header').toggle();
    })
}

/**
 * 菜单控制
 * @since 1.0 2014-9-23 by sutroon
 */
function config_index_menu() {
    // 点击菜单添加到浏览历史
    $('.menu-nav li li a').click(function () {
        var $a = $(this);
        mditab.add_tab({title: $a.text(), url: $a.attr('href'), menu_id: $a.data('id')});
        return false;
    })
}

/**
 * 配置入口页面的系统按钮
 * @since 1.0 2014-11-18 by sutroon
 */
function config_index_sysbuttons() {
    // 注销登录 2014-7-29 by sutroon
    $('.lnk-loginout').click(function () {
        window.sessionStorage.clear();
    })

    // 系统设置
    $('#system-theme').change(function () {
        var val = $(this).val();
        if (val == '') {
            return;
        }
        var url = $(this).data('updateUrl');
        if (undefined == url) {
            return;
        }
        location.href = url.replace('varkey', val);
    });
    $('#system-language').change(function () {
        var val = $(this).val();
        if (val == '') {
            return;
        }
        var url = $(this).data('updateUrl');
        if (undefined == url) {
            return;
        }
        location.href = url.replace('varkey', val);
    });
}

/**
 * 关闭对话框
 * 用于iframe子窗体调用
 * @since 1.0 2014-9-28 by sutroon created; 1.1 2014-10-10 by sutroon 改进缓存清理; 2.0 2014-10-21 by sutroon 新增多弹窗支持
 * @example window.parent.close_dialog(window.name);
 */
function close_dialog(ifrmName) {
    if ('undefined' !== typeof (show_reload_tip)) {
        show_reload_tip(); // 显示是否需要重载cti
    }
    $('iframe[name="' + ifrmName + '"]').attr('src', "about:blank").parent().dialog('close');
}

/**
 * 打开iframe对话框
 * 用于iframe子窗体调用
 * @since 1.0 2014-10-6 by sutroon created; 
 *      2.0 2014-10-21 by sutroon 新增多弹窗支持; 
 *      2.1 2014-10-29 by sutroon 新增是否显示关闭按钮的功能{closeable:false}; 
 *      2.2 2014-11-5 by sutroon 新增如果指定ifrmName则独占窗口的功能
 *      2.3 2015-1-7 by sutroon 新增组和窗口个数限制功能
 * @example window.parent.open_dialog(src,settings);
 *      open_dialog($(this).attr('href'),{},undefined,'customer',2);
 */
function open_dialog(src, settings, ifrmName, groupName, limit) {
    if (undefined == ifrmName) {
        ifrmName = 'ifrm';
    } else {
        var $ifrm = $('iframe[name="' + ifrmName + '"]');
        if ($ifrm[0]) {
            if ($ifrm.parent().parent().css('display') == 'none') {
                $ifrm.attr('src', "about:blank").attr('src', src).parent().dialog();
            }
            return;
        }
    }

    var opts = $.extend({width: 640}, settings);
    if (false == opts.closeable) {
        opts.closeOnEscape = false;
    }
    opts.close = function () {
        $(this).remove(); // 2014-11-12 by sutroon 清除缓存
    };
    $('<div><iframe name="' + ifrmName + '" style="width:100%; overflow:hidden;" frameborder="0" scrolling="no" src="' + src + '"' + (groupName ? ' data-group="' + groupName + '"' : '') + '></iframe></div>').dialog(opts).find('iframe').load(function () {
        resize_dialog($(this));
    });
    if (false == opts.closeable) {
        $('iframe[name="' + ifrmName + '"]').parent().parent().find('.ui-dialog-titlebar button').hide();
    }
    // 如果有限制数量则自动关闭第一个
    if (groupName && limit) {
        var count = $('iframe[data-group="' + groupName + '"]').length;
        if (count > limit) {
            $('iframe[data-group="' + groupName + '"]').eq(0).attr('src', "about:blank").parent().dialog('close');
        }
    }
}

/**
 * 设置对话框参数
 * @since 1.0 2014-10-21 by sutroon
 * @example window.parent.set_dialog(window.name,{title:'来电号码：'+$('input[name="hidval_tel"]').val()});
 */
function set_dialog(ifrmName, settings) {
    $('iframe[name="' + ifrmName + '"]').parent().dialog(settings);
}

/**
 * 刷新页面
 * 用于iframe子页面调用
 * @since 1.0 2014-10-6 by sutroon
 */
function refresh_page(ifrmName) {
    $('#tab_main').find('.ui-tabs-panel:visible').find('iframe')[0].contentWindow.refresh_page();
    //document.getElementById('main').contentWindow.refresh_page();
    close_dialog(ifrmName);
}

/**
 * 重置对话框尺寸
 * 用于本页面或iframe子页面刷新对话框尺寸
 * @since 1.0 2014-9-24 by sutroon, 1.1 2014-12-2 by sutroon 新增width参数
 * @example
 *  if(window.parent && window.parent.resize_dialog){ window.parent.resize_dialog();}
 *  resize_dialog(window.name,700);
 */
function resize_dialog($ifrm, width) {
    if ('string' == typeof ($ifrm)) {
        $ifrm = $('iframe[name="' + $ifrm + '"]');
    }
    var height = $ifrm.contents().find("body").height();
    // height = height < 400 ? 400 : height;
    $ifrm.height(height).parent().height(height + 10);
    if (undefined !== width) {
        $ifrm.parent().dialog({'width': width});
    }
}
